<!--SIF Implementation Specification 2.2-6 (March 17, 2008)-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" targetNamespace="http://www.sifinfo.org/infrastructure/2.x" xmlns:sif="http://www.sifinfo.org/infrastructure/2.x" elementFormDefault="qualified">
  <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="imports/xml/xml.xsd" />
  <xs:complexType name="StudentParticipationType">
    <xs:sequence>
      <xs:element name="StudentParticipationAsOfDate" type="xs:date" />
      <xs:element name="ProgramType" type="sif:ProgramTypeType" />
      <xs:element name="ProgramFundingSources" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="ProgramFundingSource" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Code">
                    <xs:simpleType>
                      <xs:union>
                        <xs:simpleType>
                          <xs:restriction base="sif:NCES0222ProgramFundingSourceType">
                            <xs:enumeration value="0797" />
                            <xs:enumeration value="0617" />
                            <xs:enumeration value="0622" />
                            <xs:enumeration value="0654" />
                            <xs:enumeration value="9999" />
                          </xs:restriction>
                        </xs:simpleType>
                        <xs:simpleType>
                          <xs:restriction base="xs:token">
                            <xs:enumeration value="S001" />
                            <xs:enumeration value="S002" />
                            <xs:enumeration value="S003" />
                            <xs:enumeration value="S004" />
                            <xs:enumeration value="S005" />
                            <xs:enumeration value="S006" />
                            <xs:enumeration value="S007" />
                            <xs:enumeration value="S008" />
                            <xs:enumeration value="S009" />
                            <xs:enumeration value="S010" />
                            <xs:enumeration value="S011" />
                            <xs:enumeration value="S012" />
                            <xs:enumeration value="S013" />
                            <xs:enumeration value="S014" />
                            <xs:enumeration value="S015" />
                            <xs:enumeration value="S016" />
                            <xs:enumeration value="S017" />
                            <xs:enumeration value="S018" />
                            <xs:enumeration value="S019" />
                            <xs:enumeration value="S020" />
                            <xs:enumeration value="S021" />
                            <xs:enumeration value="S022" />
                            <xs:enumeration value="S023" />
                            <xs:enumeration value="S024" />
                            <xs:enumeration value="S025" />
                            <xs:enumeration value="S026" />
                          </xs:restriction>
                        </xs:simpleType>
                      </xs:union>
                    </xs:simpleType>
                  </xs:element>
                  <xs:element name="OtherCodeList" minOccurs="0" nillable="true" type="sif:OtherCodeListType" />
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="ManagingPublicAgency" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:simpleContent>
            <xs:extension base="sif:IdRefType">
              <xs:attribute name="SIF_RefObject" use="required">
                <xs:simpleType>
                  <xs:restriction base="xs:token">
                    <xs:enumeration value="LEAInfo" />
                  </xs:restriction>
                </xs:simpleType>
              </xs:attribute>
            </xs:extension>
          </xs:simpleContent>
        </xs:complexType>
      </xs:element>
      <xs:element name="ManagingSchool" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:simpleContent>
            <xs:extension base="sif:IdRefType">
              <xs:attribute name="SIF_RefObject" use="required">
                <xs:simpleType>
                  <xs:restriction base="xs:token">
                    <xs:enumeration value="SchoolInfo" />
                  </xs:restriction>
                </xs:simpleType>
              </xs:attribute>
            </xs:extension>
          </xs:simpleContent>
        </xs:complexType>
      </xs:element>
      <xs:element name="PartCTransitionMeetingNotHeldReasons" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="PartCTransitionMeetingNotHeldReason" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Code">
                    <xs:simpleType>
                      <xs:restriction base="xs:token">
                        <xs:enumeration value="S001" />
                        <xs:enumeration value="S002" />
                        <xs:enumeration value="S003" />
                        <xs:enumeration value="S004" />
                      </xs:restriction>
                    </xs:simpleType>
                  </xs:element>
                  <xs:element name="OtherCodeList" minOccurs="0" nillable="true" type="sif:OtherCodeListType" />
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="PartCTransitionMeetingDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="PartCTransitionMeetingOutcomes" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="PartCTransitionMeetingOutcome" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Code">
                    <xs:simpleType>
                      <xs:restriction base="xs:token">
                        <xs:enumeration value="S001" />
                        <xs:enumeration value="S002" />
                        <xs:enumeration value="S003" />
                        <xs:enumeration value="S004" />
                        <xs:enumeration value="S005" />
                        <xs:enumeration value="S006" />
                      </xs:restriction>
                    </xs:simpleType>
                  </xs:element>
                  <xs:element name="OtherCodeList" minOccurs="0" nillable="true" type="sif:OtherCodeListType" />
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="ReferralDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="ReferralSource" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Code" type="sif:NCES0792IdentificationProcedureType" />
            <xs:element name="OtherCodeList" minOccurs="0" nillable="true" type="sif:OtherCodeListType" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="ProgramStatus" minOccurs="0" nillable="true" type="sif:ProgramStatusType" />
      <xs:element name="GiftedEligibilityCriteria" minOccurs="0" nillable="true" type="xs:token" />
      <xs:element name="EvaluationParentalConsentDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="EvaluationDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="EvaluationExtensionDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="ExtensionComments" minOccurs="0" nillable="true" type="xs:string" />
      <xs:element name="ReevaluationDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="ExceptionalityCategories" minOccurs="0" nillable="true" type="sif:ExceptionalityCategoriesType" />
      <xs:element name="ProgramEligibilityDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="ProgramPlanType" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Code">
              <xs:simpleType>
                <xs:union>
                  <xs:simpleType>
                    <xs:restriction base="sif:NCES0806IndividualizedProgramTypeType" />
                  </xs:simpleType>
                  <xs:simpleType>
                    <xs:restriction base="xs:token">
                      <xs:enumeration value="S001" />
                      <xs:enumeration value="S002" />
                      <xs:enumeration value="S003" />
                      <xs:enumeration value="S004" />
                      <xs:enumeration value="S005" />
                      <xs:enumeration value="S006" />
                    </xs:restriction>
                  </xs:simpleType>
                </xs:union>
              </xs:simpleType>
            </xs:element>
            <xs:element name="OtherCodeList" minOccurs="0" nillable="true" type="sif:OtherCodeListType" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="ProgramPlanDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="ProgramPlanEffectiveDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="NOREPDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="PlacementParentalConsentDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="ProgramPlacementDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="LeastRestrictiveEnvironment" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Code">
              <xs:simpleType>
                <xs:union>
                  <xs:simpleType>
                    <xs:restriction base="sif:NCES0307ServiceSettingType" />
                  </xs:simpleType>
                  <xs:simpleType>
                    <xs:restriction base="sif:NCES0798EarlyChildhoodProgramSettingType" />
                  </xs:simpleType>
                  <xs:simpleType>
                    <xs:restriction base="sif:NCES0804EarlyChildhoodSpecialEducationSettingType">
                      <xs:enumeration value="2191" />
                      <xs:enumeration value="2190" />
                      <xs:enumeration value="2187" />
                      <xs:enumeration value="2188" />
                      <xs:enumeration value="2184" />
                    </xs:restriction>
                  </xs:simpleType>
                </xs:union>
              </xs:simpleType>
            </xs:element>
            <xs:element name="OtherCodeList" minOccurs="0" nillable="true" type="sif:OtherCodeListType" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="ExtendedSchoolYear" minOccurs="0" nillable="true" type="xs:boolean" />
      <xs:element name="ExtendedDay" minOccurs="0" nillable="true" type="xs:boolean" />
      <xs:element name="ProgramAvailability" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Code" type="sif:NCES0211ProgramAvailabilityType" />
            <xs:element name="OtherCodeList" minOccurs="0" nillable="true" type="sif:OtherCodeListType" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="PrivateNotPlacedByPublic" minOccurs="0" nillable="true" type="xs:boolean" />
      <xs:element name="ProgramReviewDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="FBADate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="BIPDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="ProgramExitDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="ProgramExitReason" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Code">
              <xs:simpleType>
                <xs:union>
                  <xs:simpleType>
                    <xs:restriction base="sif:NCES0815ProgramExitReasonType" />
                  </xs:simpleType>
                  <xs:simpleType>
                    <xs:restriction base="xs:token">
                      <xs:enumeration value="S001" />
                      <xs:enumeration value="S002" />
                    </xs:restriction>
                  </xs:simpleType>
                </xs:union>
              </xs:simpleType>
            </xs:element>
            <xs:element name="OtherCodeList" minOccurs="0" nillable="true" type="sif:OtherCodeListType" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="ProjectedExitDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="ProjectedExitReason" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:simpleContent>
            <xs:extension base="xs:token">
              <xs:attribute name="Codeset" use="required">
                <xs:simpleType>
                  <xs:restriction base="xs:token">
                    <xs:enumeration value="StateProvince" />
                    <xs:enumeration value="Local" />
                    <xs:enumeration value="Other" />
                    <xs:enumeration value="Text" />
                  </xs:restriction>
                </xs:simpleType>
              </xs:attribute>
            </xs:extension>
          </xs:simpleContent>
        </xs:complexType>
      </xs:element>
      <xs:element name="PlannedAssessmentParticipation" minOccurs="0" nillable="true" type="sif:PlannedAssessmentParticipationType" />
      <xs:element name="TransitionPlanning" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:simpleContent>
            <xs:extension base="xs:token">
              <xs:attribute name="Codeset" use="required">
                <xs:simpleType>
                  <xs:restriction base="xs:token">
                    <xs:enumeration value="StateProvince" />
                    <xs:enumeration value="Local" />
                    <xs:enumeration value="Other" />
                    <xs:enumeration value="Text" />
                  </xs:restriction>
                </xs:simpleType>
              </xs:attribute>
            </xs:extension>
          </xs:simpleContent>
        </xs:complexType>
      </xs:element>
      <xs:element name="StudentSpecialEducationFTE" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:decimal">
            <xs:minInclusive value="0" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
            <xs:maxInclusive value="1" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
            <xs:fractionDigits value="2" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="EntryPerson" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="ParticipationContact" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType" />
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
    <xs:attribute name="StudentPersonalRefId" use="required" type="sif:IdRefType" />
  </xs:complexType>

  <xs:element name="StudentParticipation" type="sif:StudentParticipationType" />

</xs:schema>